Neural Network Models For Real-Time Optimization of Drilling Parameters During Drilling Operations

ABSTRACT

System and methods for optimizing parameters for drilling operations are provided. Real-time data including values for input variables associated with a current stage of a drilling operation along a planned well path are acquired. A neural network model is trained to produce an objective function defining a response value for at least one operating variable of the drilling operation. The response value for the operating variable is estimated based on the objective function produced by the trained neural network model. Stochastic optimization is applied to the estimated response value so as to produce an optimized response value for the operating variable. Values of controllable parameters are estimated for a subsequent stage of the drilling operation, based on the optimized response value of the operating variable. The subsequent stage of the drilling operation is performed based on the estimated values of the controllable parameters.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application No.62/548,274, filed on Aug. 21, 2017, the benefit of which is claimed andthe disclosure of which is incorporated herein by reference in itsentirety.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to well planning and controlduring drilling operations and particularly, to real-time modeling andoptimization of drilling parameters for well planning and control duringdrilling operations.

BACKGROUND

To obtain hydrocarbons, such as oil and gas, a wellbore is drilled intoa hydrocarbon bearing rock formation by rotating a drill bit attached toa drill string. The drill bit is mounted on the lower end of the drillstring as part of a bottomhole assembly (BHA) and is rotated by rotatingthe drill string at the surface, by actuation of a downhole motor, orboth. With weight applied by the drill string, the rotating drill bitengages the formation and forms a borehole toward a target zone. Duringthe drilling process, drilling fluids are circulated to clean thecuttings while the drill bit is penetrated through the formation.

A number of sensors or measurement devices may be placed in closeproximity to the drill bit to measure downhole operating parametersassociated with the drilling and downhole conditions. The measurementscaptured by such sensors may be transmitted to a computing device of adrilling operator at the surface of the borehole for purposes ofmonitoring and controlling the drilling of the wellbore along a plannedpath over different stages of a drilling operation. When makingdecisions for effectively planning and implementing a well plan, thedrilling operator may need to constantly monitor and adjust variousparameters to account for changes in downhole conditions as the wellboreis drilled through different layers of the formation. However, this mayprove to be difficult due to the complexity of the underlying physicsand engineering aspects of the drilling process in addition to theinherent uncertainty of the data captured at the surface and downhole.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of an offshore drilling system in accordance withone or more embodiments of the present disclosure.

FIG. 2 is a diagram of an onshore drilling system in accordance with oneor more embodiments of the present disclosure.

FIG. 3 is a block diagram of a system for real-time analysis andoptimization of downhole parameters for well planning and control duringa drilling operation.

FIG. 4 is a diagram of an illustrative neural network model foroptimizing parameters for a drilling operation along a planned well pathbased on non-linear constraints applied to the model over differentstages of the operation.

FIG. 5 is a schematic of a neural network model with real-time datainputs and Bayesian optimization for training or retraining the model.

FIG. 6 is a schematic of a sliding window neural network (SWNN) forpredicting values of one or more operating variables of a drillingoperation along a well path.

FIG. 7 is a schematic of a recurrent deep neural network (DNN) with oneor more Gated Recurrent Unit (GRU) cells for predicting values of one ormore operating variables of a drilling operation along a well path.

FIG. 8 is a schematic of an illustrative GRU cell of the DNN shown inFIG. 7.

FIG. 9 is a diagram of an illustrative recurrent DNN architecture forfiltering noise from the real-time data used to train the recurrent DNN.

FIG. 10 is a flowchart of an illustrative process of optimizing downholeparameters with a real-time neural network model for well planning andcontrol during different stages of a drilling operation.

FIGS. 11A, 11B, 11C and 11D are plot graphs showing values of rate ofpenetration (ROP) as predicted using a SWNN model relative to the actualROP values along a well path.

FIGS. 12A and 12B are plot graphs showing a comparison between predictedand actual ROP values along a well path, where the predicted values arebased on a recurrent DNN with and without a noise filter, respectively.

FIG. 13 is a block diagram of an illustrative computer system in whichone or more embodiments may be implemented.

DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

Embodiments of the present disclosure relate to using neural networkmodels for real-time optimization of downhole parameters for drillingoperations. While the present disclosure is described herein withreference to illustrative embodiments for particular applications, itshould be understood that embodiments are not limited thereto. Otherembodiments are possible, and modifications can be made to theembodiments within the spirit and scope of the teachings herein andadditional fields in which the embodiments would be of significantutility.

In the detailed description herein, references to “one embodiment,” “anembodiment,” “an example embodiment,” etc., indicate that the embodimentdescribed may include a particular feature, structure, orcharacteristic, but every embodiment may not necessarily include theparticular feature, structure, or characteristic. Moreover, such phrasesare not necessarily referring to the same embodiment. Further, when aparticular feature, structure, or characteristic is described inconnection with an embodiment, it is submitted that it is within theknowledge of one skilled in the relevant art to implement such feature,structure, or characteristic in connection with other embodimentswhether or not explicitly described.

It would also be apparent to one of skill in the relevant art that theembodiments, as described herein, can be implemented in many differentembodiments of software, hardware, firmware, and/or the entitiesillustrated in the figures. Any actual software code with thespecialized control of hardware to implement embodiments is not limitingof the detailed description. Thus, the operational behavior ofembodiments will be described with the understanding that modificationsand variations of the embodiments are possible, given the level ofdetail presented herein.

The terms “controllable parameter” and “input variable” may be usedinterchangeably herein to refer to a controllable input or parameter ofa drilling operation that may be adjusted over the course of theoperation and whose values may have an impact on the outcome of theoperation. The drilling operation may involve drilling a wellbore alonga planned path or trajectory through different layers of a subsurfaceformation. Downhole operating conditions may change while the wellboreis drilled through the formation. As a result, a drilling operator orautomated control system may continuously adjust one or morecontrollable parameters to account for such changes and thereby maintainor improve drilling efficiency during the operation. Examples of suchcontrollable parameters include, but are not limited to, weight-on-bit(WOB), rotational speed of the drill bit or drill string (e.g.,rotational rate applied by the top drive unit) in revolutions per minute(RPM), and an injection or pumping rate (Q) of drilling fluid into thewellbore or pipe disposed therein. Although “RPM” will be used herein torefer to drill bit rotation or rotational speed, it should beappreciated that such speed may be specified using any appropriate unitof measure as desired for a particular implementation.

In one or more embodiments, the controllable parameters may be used tocontrol values of an “operating variable” of the drilling operation asit is performed downhole over different stages along a planned path ofthe wellbore through the formation. The operating variable may beselected by a user (e.g., a drilling operator) to monitor a particulardownhole response as the drilling operation is performed along the wellpath, e.g., according to current values of the controllable parametersor input variables. Accordingly, the operating variable may also bereferred to herein as a “response variable” of the drilling operation.Examples of such operating/response variables include, but are notlimited to, hydraulic mechanical specific energy (HMSE) and rate ofpenetration (ROP). The controllable parameters (input variables) andoperating/response variables are collectively referred to herein as“drilling parameters.”

In one or more embodiments, a neural network model with stochasticoptimization based on Bayesian optimization (BO) may be used to optimizeone or more operating variables (or response variables) for each stageof the drilling operation, e.g., maximizing ROP and/or minimizing HMSEat different depths or points along the well path. As will be describedin further detail below, real-time data, including the current values ofone or more controllable parameters (e.g., WOB, RPM, and/or Q) atvarious depths along the well path, may be applied as inputs to theneural network model for predicting values of the response variable(s).The neural network model may be, for example, a sliding window neuralnetwork (SWNN). Alternatively, the neural network model may be arecurrent deep neural network (DNN) with one or more Gated RecurrentUnit (GRU) cells. However, it should be appreciated that any of variousneural network models, e.g., long short-term memory (LSTM) deep neuralnetwork models, may also be used as desired for a particularimplementation.

Illustrative embodiments and related methodologies of the presentdisclosure are described below in reference to FIGS. 1-15 as they mightbe employed in, for example, a computer system for real-time modelingand optimization of drilling parameters over different stages of adrilling operation along a planned well path. In some implementations,such a computer system may be part of an automated control system forsteering a drill bit along the well path by mathematically coupling theneural network model with the real-time drilling data and variousnon-linear discontinuous constraints associated with the differentstages of the drilling operation at various depths or points along thewell path. For example, the drill bit may be steered in iterative manneras the real-time data is acquired over a period of time during eachstage of the drilling operation. At each iteration over the time period,the real-time data acquired for a current stage of the operation may beapplied as inputs for training or retraining the neural network model toestimate or predict the response variable for a subsequent stage alongthe well path. Bayesian optimization may be applied to optimize thepredicted response variable. The optimized response variable may then beused to estimate or predict optimal values for one or more controllableparameters, and the subsequent stage of the drilling operation may beperformed by steering the drill bit through the formation according tothe estimated controllable parameter values. In this way, the system mayiteratively steer the drill bit and adjust the well path as needed tooptimize drilling efficiency, e.g., by maximizing ROP and/or minimizingHMSE.

Other features and advantages of the disclosed embodiments will be orwill become apparent to one of ordinary skill in the art uponexamination of the following figures and detailed description. It isintended that all such additional features and advantages be includedwithin the scope of the disclosed embodiments. Further, the illustratedfigures are only exemplary and are not intended to assert or imply anylimitation with regard to the environment, architecture, design, orprocess in which different embodiments may be implemented. While theillustrated examples may be described in the context of predicting andoptimizing ROP and/or HMSE, it should be noted that embodiments are notintended to be limited thereto and that the disclosed parameteroptimization techniques may be applied to any of various operatingvariables as desired for a particular implementation. Also, while afigure may depict a horizontal wellbore or a vertical wellbore, unlessindicated otherwise, it should be understood by those skilled in the artthat the apparatus according to the present disclosure is equally wellsuited for use in wellbores having other orientations including verticalwellbores, slanted wellbores, multilateral wellbores or the like.Further, unless otherwise noted, even though a figure may depict a casedhole, it should be understood by those skilled in the art that theapparatus according to the present disclosure is equally well suited foruse in open hole operations.

FIG. 1 is a diagram showing an example of an offshore drilling systemfor a subsea drilling operation. In particular, FIG. 1 shows abottomhole assembly 100 for a subsea drilling operation, where thebottomhole assembly 100 illustratively comprises a drill bit 102 on thedistal end of the drill string 104. Various logging-while-drilling (LWD)and measuring-while-drilling (MWD) tools may also be coupled within thebottomhole assembly 100. The distinction between LWD and MWD issometimes blurred in the industry, but for purposes of thisspecification and claims LWD tools measure properties of the surroundingformation (e.g., resistivity, porosity, permeability), and MWD toolsmeasure properties associated with the borehole (e.g., inclination, anddirection). In the example system, a logging tool 106 may be coupledjust above the drill bit, where the logging tool may read dataassociated with the borehole 108 (e.g., MWD tool), or the logging tool106 may read data associated with the surrounding formation (e.g., a LWDtool). In some cases, the bottomhole assembly 100 may comprise a mudmotor 112. The mud motor 112 may derive energy from drilling fluidflowing within the drill string 104 and, from the energy extracted, themud motor 112 may rotate the drill bit 102 (and if present the loggingtool 106) separate and apart from rotation imparted to the drill stringby surface equipment. Additional logging tools may reside above the mudmotor 112 in the drill string, such as illustrative logging tool 114.

The bottomhole assembly 100 is lowered from a drilling platform 116 byway of the drill string 104. The drill string 104 extends through ariser 118 and a well head 120. Drilling equipment supported within andaround derrick 123 (illustrative drilling equipment discussed in greaterdetail with respect to FIG. 2) may rotate the drill string 104, and therotational motion of the drill string 104 and/or the rotational motioncreated by the mud motor 112 causes the bit 102 to form the borehole 108through the formation material 122. The volume defined between the drillstring 104 and the borehole 108 is referred to as the annulus 125. Theborehole 108 penetrates subterranean zones or reservoirs, such asreservoir 110, believed to contain hydrocarbons in a commercially viablequantity.

The bottomhole assembly 100 may further comprise a communicationsubsystem including, for example, a telemetry module 124. Telemetrymodule 124 may communicatively couple to the various logging tools 106and 114 and receive logging data measured and/or recorded by the loggingtools 106 and 114. The telemetry module 124 may communicate logging datato the surface using any suitable communication channel (e.g., pressurepulses within the drilling fluid flowing in the drill string 104,acoustic telemetry through the pipes of the drill string 104,electromagnetic telemetry, optical fibers embedded in the drill string104, or combinations). Likewise, the telemetry module 124 may receiveinformation from the surface over one or more of the communicationchannels.

FIG. 2 is a diagram showing an example of an onshore drilling system forperforming a land-based drilling operation. In particular, FIG. 2 showsa drilling platform 200 equipped with a derrick 202 that supports ahoist 204. The hoist 204 suspends a top drive 208, which rotates andlowers the drill string 104 through the wellhead 210. Drilling fluid ispumped by mud pump 214 through flow line 216, stand pipe 218, goose neck220, top drive 208, and down through the drill string 104 at highpressures and volumes to emerge through nozzles or jets in the drill bit102. The drilling fluid then travels back up the wellbore via theannulus 125, through a blowout preventer (not specifically shown), andinto a mud pit 224 on the surface. At the surface of the wellsite, thedrilling fluid is cleaned and then circulated again by mud pump 214. Thedrilling fluid is used to cool the drill bit 102, to carry cuttings fromthe base of the borehole to the surface, and to balance the hydrostaticpressure in the rock formations.

In the illustrative case of the telemetry mode 124 encoding data inpressure pulses that propagate to the surface, one or more transducers,e.g., one or more of transducers 232, 234, and 236, convert the pressuresignal into electrical signals for a signal digitizer 238 (e.g., ananalog-to-digital converter). While only transducers 232, 234, and 236are illustrated, any number of transducers may be used as desired for aparticular implementation. The digitizer 238 supplies a digital form ofthe pressure signals to a surface computer system 240 or some other formof a data processing device located at the surface of the wellsite. Thesurface computer system 240 operates in accordance withcomputer-executable instructions (which may be stored on acomputer-readable storage medium) to monitor and control the drillingoperation, as will be described in further detail below. Suchinstructions may be used, for example, to configure the surface computersystem 240 to process and decode the downhole signals received from thetelemetry mode 124 via digitizer 238.

In one or more embodiments, real-time data collected at the wellsite,including the downhole logging data from the telemetry module 124, maybe displayed on a display device 241 coupled to the computer system 240.The representation of the wellsite data may be displayed using any ofvarious display techniques, as will be described in further detailbelow. In some implementations, the surface computer system 240 maygenerate a two-dimensional (2D) or three-dimensional (3D) graphicalrepresentation of the wellsite data for display on the display device241 a graphic. The graphical representation of the wellsite data may bedisplayed with a representation of the planned well path for enabling auser of the computer system 240 to visually monitor or track differentstages of the drilling operation along the planned path of the well.

In one or more embodiments, the representations of the wellsite data andplanned well path may be displayed within a graphical user interface(GUI) of a geosteering or well engineering application 280 executable atthe surface computer system 240. Well engineering application 280 mayprovide, for example, a set of data analysis and visualization tools forwell planning and control. Such tools may allow the user to monitordifferent stages of the drilling operation and adjust the planned wellpath as needed, e.g., by manually adjusting one or more controllableparameters via the GUI of well engineering application 280 to controlthe direction and/or orientation of drill bit 102 and well path.Alternatively, the monitoring and control of the drilling operation maybe performed automatically, without any user intervention, by wellengineering application 280.

For example, as each stage of the drilling operation is performed and acorresponding portion of the well is drilled along its planned path,well engineering application 280 may receive indications of downholeoperating conditions and values of controllable parameters used tocontrol the drilling of the well during the operation. Examples of suchcontrollable parameters include, but are not limited to, WOB, drillingfluid injection or flow rate and pressure (within the drill pipe),rotational speed of the drill string and/or drill bit (e.g., rotationalrate applied by the top drive unit and/or a downhole motor), and thedensity and viscosity of the drilling fluid. In response to receivingindications of downhole operating conditions during a current stage ofthe drilling operation, the surface computer system 240 mayautomatically send control signals to one or more downhole devices(e.g., a downhole geosteering tool) in order to adjust the planned pathof the well for subsequent stages of the operation. The control signalsmay include, for example, optimized values of one or more controllableparameters for performing the subsequent stages of the drillingoperation along the adjusted path of the well.

In one or more embodiments, some or all of the calculations andfunctions associated with the manual or automated monitoring and controlof the drilling operation at the wellsite may be performed by a remotecomputer system 242 located away from the wellsite, e.g., at anoperations center of an oilfield services provider. In someimplementations, the functions performed by the remote computer system242 may be based on wellsite data received from the wellsite computersystem 240 via a communication network. Such a network may be, forexample, a local-area, medium-area, or wide-area network, e.g., theInternet. As illustrated in the example of FIG. 2, the communicationbetween computer system 240 and computer system 242 may be over asatellite 244 link. However, it should be appreciated that embodimentsare not limited thereto and that any suitable form of communication maybe used as desired for a particular implementation.

While not shown in FIG. 2, the remote computer system 242 may execute asimilar application as the well engineering application 280 of system240 for implementing all or a portion of the above-described wellsitemonitoring and control functionality. For example, such functionalitymay be implemented using only the well engineering application 280executable at system 240 or using only the well engineering applicationexecutable at the remote computer system 242 or using a combination ofthe well engineering applications executable at the respective computersystems 240 and 242 such that all or portion of the wellsite monitoringand control functionality may be spread amongst the available computersystems.

In one or more embodiments, the wellsite monitoring and controlfunctionality provided by computer system 242 (and computer system 240or well engineering application 280 thereof) may include real-timeanalysis and optimization of parameters for different stages of thedrilling operation along the planned well path, as described above andas will be described in further detail below with respect to FIGS. 3-15.While the examples of FIGS. 1 and 2 are described in the context of asingle well and wellsite, it should be appreciated that embodiments arenot intended to be limited thereto and that the real-time analysis andoptimization techniques disclosed herein may be applied to multiplewells at various sites throughout a hydrocarbon producing field. Forexample, the remote computer system 242 of FIG. 2, as described above,may be communicatively coupled via a communication network tocorresponding wellsite computer systems similar to the computer system240 of FIG. 2, as described above. The remote computer system 242 inthis example may be used to continuously monitor and control drillingoperations at the various wellsites by sending and receiving controlsignals and wellsite data to and from the respective wellsite computersystems via the network.

FIG. 3 is a block diagram of a system 300 for real-time analysis andoptimization of parameters for different stages of a drilling operation.The drilling operation may be, for example, a subsea drilling operationfor drilling a wellbore along a planned path through a subsurfaceformation at an offshore wellsite, as described above with respect toFIG. 1. Alternatively, the drilling operation may be a land-baseddrilling operation for drilling the wellbore along a planned paththrough a subsurface formation at an onshore wellsite, as describedabove with respect to FIG. 2. As shown in FIG. 3, system 300 includes awell planner 310, a memory 320, a graphical user interface (GUI) 330,and a network interface 340. In one or more embodiments, the wellplanner 310 includes a data manager 312, a drilling optimizer 314, and awell controller 316. Although not shown in FIG. 3, it should beappreciated that system 300 may include additional components andsub-components, which may be used to provide the real-time analysis andoptimization functionality described herein.

The network interface 340 of the system 300 may comprise logic encodedin software, hardware, or combination thereof for communicating with anetwork 304. For example, the network interface 340 may include softwaresupporting one or more communication protocols such that hardwareassociated with the network interface 340 is operable to communicatesignals to other computing systems and devices via the network 304. Thenetwork 304 may be used, for example, to facilitate wireless or wirelinecommunications between the system 300 and the other computing systemsand devices. In some implementations, the system 300 and the othersystems and devices may function as separate components of a distributedcomputing environment in which the components are communicativelycoupled via the network 304. While not shown in FIG. 3, it should beappreciated that such other systems and devices may include other localor remote computers including, for example and without limitation, oneor more client systems, servers, or other devices communicativelycoupled via the network 304.

The network 304 may be one or any combination of networks including, butnot limited to, a local-area, medium-area, or wide-area network, e.g.,the Internet. Such network(s) may be all or a portion of an enterpriseor secured network. In some instances, a portion of the network 304 maybe a virtual private network (VPN) between, for example, system 300 andother computers or other electronic devices. Further, all or a portionof the network 304 can include either a wireline or wireless link.Examples of such wireless links include, but are not limited to,802.11a/b/g/n, 802.20, WiMax, and/or any other appropriate wirelesslink. The network 304 may encompass any number of internal (private) orexternal (public) networks, sub-networks, or combination thereof tofacilitate communications between various computing components includingthe system 300.

In one or more embodiments, the system 300 may use the network 304 tocommunicate with a database 350. The database 350 may be used to storedata accessible to the system 300 for performing the real-time modelingand geosteering functionality described herein. The database 350 may beassociated with or located at the operations center of an oilfieldservices provider, as described above with respect to computer system242 of FIG. 2. The stored data may include, for example, historicalwellsite data and parameters associated with drilling operations atvarious wellsites, e.g., other wellsites within the same hydrocarbonproducing field as the wellsite in this example. Additionally oralternatively, the data may include data collected in real-time from thewellsite during the different stages of the drilling operation. Suchreal-time data may be retrieved from the database 350 via the network304 and stored within memory 320 as wellsite data 322, e.g., to beretrieved and applied as input data for performing the real-timemodeling and optimization techniques disclosed herein. In someimplementations, the data may be streamed from the database 350 as areal-time data feed to a designated buffer or storage area correspondingto wellsite data 322 within memory 320.

In one or more embodiments, the wellsite data 322 may include datatransmitted via network 304 directly from a surface control system(e.g., surface computer system 240 of FIG. 2, as described above) at adrilling rig or offshore platform using an industrial format such as thewellsite information transfer standard markup language (WITSML). WITSMLis known to facilitate the free flow of technical data across networksbetween oil companies, service companies, drilling contractors,application vendors and regulatory agencies for the drilling,completions, and interventions functions of the upstream oil and naturalgas industry. However, it should be appreciated that the wellsite data322 can be transmitted and stored using any type of data format,standard, or structure as desired for a particular implementation.

The stored wellsite data 322 may include current values of controllableparameters, e.g., flow rate (Q), weight on bit (WOB), and drill bitrotational speed (RPM). However, it should be appreciated that thewellsite data 322 may also include any of various measurements or otherdata collected at the wellsite. Examples of such other data include, butare not limited to, depth (vertical depth within the formation and/ormeasured depth of the wellbore, whether vertical or deviated), bit size,drill collar length, torque and drag on the string, plastic viscosity,yield point, mud weight, gel strength, downhole pressure, andtemperature.

In one or more embodiments, the data manager 312 of well planner 310 maypreprocess the stored wellsite data 322 or real-time data feed receivedvia the network 304 from the database 350 or a wellsite computer system.The preprocessing may include, for example, filtering the data into apredetermined sampling rate or drilling rate time series. In someimplementations, the data manager 312 may include one or more datafilters for reducing or canceling noise from the real-time data.Examples of such filters include, but are not limited to, a convolutionneural network, a band-pass filter, a Kalman filter, a high pass filter,a low pass filter, an average filter, a noise reduction filter, a delayfilter, a summation filter, a format conversion filter, and any othertype of digital or analog data filters. The preprocessed data may thenbe classified for use in prediction and optimization of one or moreoperating variables and controllable parameters for different stages ofthe drilling operation, as will be described in further detail below.

In one or more embodiments, at least one operating variable of interestmay be selected by a user 302 via the GUI 330. The operating variableselected by user 302 may be, for example, at least one of ROP or HMSE.The operating variable(s) selected by user 302 in this example may beused to monitor drilling efficiency and trends in the performance of thedrilling operation as the wellbore is drilled through the formation. Inone or more embodiments, a visualization of estimated values of theoperating variable and/or controllable parameters affecting theoperating variable may be presented to the user 302 via a visualizationwindow or content viewing area of the GUI 330. The GUI 330 may bedisplayed using any type of display device (not shown) coupled to system300. Such a display device may be, for example and without limitation, acathode ray tubes (CRT), liquid crystal displays (LCD), or lightemitting diode (LED) monitor. The user 302 may interact with the GUI 330using an input device (not shown) coupled to the system 300. The userinput device may be, for example and without limitation, a mouse, aQWERTY or T9 keyboard, a touch-screen, a stylus or other pointer device,a graphics tablet, or a microphone. In some implementations, the user302 may use the information displayed via the GUI 330 to assess drillingperformance at each stage of the operation and make any manualadjustments to the planned path of the well, e.g., by enteringappropriate commands into a drilling operation control module used tocontrol the drilling operations at the wellsite. However, it should beappreciated that such adjustments may be made automatically by anautomated control system for the wellsite.

During the drilling operation, drilling fluids are pumped into thewellbore to remove the cuttings produced while the drill bit penetratessubsurface rock layers and forms the wellbore within the subsurfaceformation. The major physical and engineering aspects of the drillingprocess can be very complex and any wellsite data collected as thewellbore is drilled often includes a significant amount of noise anduncertainty. As a result, the response surface for operating variables,such as ROP and HMSE, tends to be non-linear and discontinuous.

In one or more embodiments, drilling optimizer 314 may use a neuralnetwork model with stochastic optimization to estimate or predictoptimal values for both the selected operating variable(s) andcontrollable parameters of the drilling operation that affect theoperating variable(s) during the operation. Such a stochastic-basedapproach may provide a level of accuracy and speed needed to performreal-time applications, e.g., real-time modeling and geosteering, inrelatively short period of time for optimizing the path of the wellboreas it is drilled in a localized region of the formation over each stageof the drilling operation. An example of a neural network model withstochastic optimization is shown in FIG. 4.

In FIG. 4, a neural network model 400 may use stochastic optimization tooptimize at least one operating variable (e.g., maximize ROP and/orminimize HMSE) at each of a plurality of stages 402 a, 402 b, and 402 cof a drilling operation along a well path 402. Each stage may correspondto an interval or section of well path 402 along which a portion of awellbore is drilled through a subsurface formation. While three stagesare shown in FIG. 4, it should be appreciated that the drillingoperation may include any number of stages. It should also beappreciated that each stage of the operation may be of any length orsize and that the overall spacing of the stages along well path 402 maybe customized or configured as desired for a particular implementation.For example, in some implementations, each stage of the drillingoperation may be performed over a predetermined length or depth interval(e.g., 30 feet) along the well path and the stages may be locatedadjacently to one another.

While the drilling operation is performed along well path 402, adrilling operator or automated control system at the wellsite may adjustthe values of one or more controllable parameters, e.g., WOB, RPM, andQ, to account for changes in drilling conditions. The value of theoperating variable may also change in response to the changes made tothe controllable parameters. Accordingly, the operating variable in thiscontext may be referred to as a response variable and a value of theoperating variable as a response value. In one or more embodiments,real-time data including current values of the controllable parametersmay be collected at the wellsite during each of stages 402 a, 402 b, and402 c. The real-time data may be multidimensional temporal data, e.g.,drilling data samples captured with depth over a time series, which maycorrespond to the drilling rate. Neural network model 400 may be used tocouple the depth data with nonlinear constraints to resolve the time andspatial variation of the response variable during the drillingoperation.

In one or more embodiments, the values of the controllable parametersassociated with a current stage (e.g., 402 a) of the drilling operationmay be applied as input variables for training neural network model 400to produce an objective function defining a response value for theoperating variable to be optimized for a subsequent stage (e.g., 402 band/or 402 c) of the operation. For example, the objective function maydefine a response value for ROP in terms of WOB, RPM, and Q, asexpressed using Equation (1):

ROP=f(WOB,RPM,Q)  (1)

The objective function in this context may be a cost function, which canbe maximized or minimized depending on the particular operating variableof interest, e.g., maximized for ROP and minimized for HMSE.

To account for any high levels of nonlinearity and/or noise in thereal-time or drilling rate time series data, the objective functionproduced by neural network model 400 for defining the response value ofthe operating variable may be subject to a set of nonlinear constraints410. Nonlinear constraints 410 may be derived from data modelsrepresenting different aspects of the drilling operation that may beassociated with certain values of the controllable parameters and thatmay impact the response value of the operating variable to change overthe course of the drilling operation. The data models in this examplemay include, but are not limited to, a torque and drag (“T&D”) model412, a whirl model 414, and a drilling fluid model (“DFM”) 416.

In one or more embodiments, simulations for determining the appropriateconstraints may be performed by applying the real-time data acquiredduring the operation as inputs to each of these models. For example,torque and drag model 412 may be used to simulate forces exerted on thedrill bit by friction with the subterranean formation in which thewellbore is being formed. Torque and drag model 412 may thereforeprovide a threshold on the WOB to avoid excessive wear that can lead tofailure of the drill bit or other components of the drilling assemblyattached to the end of the drill string. Whirl model 414 may be used tosimulate vibrational forces in the drill string that may cause damage atcertain RPM values. As RPM values can change with the length and depthof the drill string, whirl model 414 may be used to constrain the RPM tosafe value ranges that avoid excess vibration at a given WOB. Drillingfluid model 416 may be used to simulate the injection of drilling fluid(e.g., mud) used to remove cuttings or debris from the wellbore duringthe drilling operation. The ROP of the drill bit may be limited by themaximum amount of debris that can be removed from the wellbore by fluidinjection or pumping over a given period of time. Thus, drilling fluidmodel 416 may provide a maximum fluid injection or pumping rate at whichdebris-filled fluid can be removed from the wellbore.

Neural network model 400 with the constraints applied to the objectivefunction, as described above, may then be used to estimate or predict aresponse value for the operating variable to be optimized for asubsequent stage of the drilling operation along well path 402. In oneor more embodiments, stochastic optimization, e.g., Bayesianoptimization, may be applied to the response value to produce anoptimized response value.

As shown in FIG. 5, Bayesian optimization (BO) may be appliediteratively to retrain a neural network model as necessary to meet apredetermined criterion. Such a criterion may be, for example, an errortolerance threshold, and the neural network model may be retrained eachtime it is determined that a difference between the estimated responsevalue and an actual value of the operating variable exceeds thethreshold. The actual value of the operating variable may be based onadditional real-time data acquired during a subsequent stage of thedrilling operation. In one or more embodiments, the neural network modelmay be retrained by applying the Bayesian optimization to one or morehyperparameters of the model. Examples of such hyperparameters include,but are not limited to, the number of layers of the neural network, thenumber of nodes in each layer, the learning rate of decay and any otherparameter that relates to the behavior and/or capacity of the model.

Returning to FIG. 4, the optimized response value produced by neuralnetwork model 400 may then be used to predict or estimate optimal valuesof controllable parameters 420. Controllable parameters 420 in thisexample may include, but are not limited to, WOB 422, drill bit speed(or RPM) 424, and flow rate (Q) 426. Flow rate 426 may be the rate atwhich fluid (e.g., mud) is pumped into the wellbore.

Returning to system 300 of FIG. 3, the above-described modeling andsimulation operations for optimizing the response value and controllableparameter values using neural network model 400 may be performed bydrilling optimizer 314, based on the real-time data acquired andpreprocessed by data manager 312. The response value and/or values ofthe controllable parameters may be stored as output data 324 within thememory 320.

In one or more embodiments, drilling optimizer 314 may provide theestimated values of the controllable parameters to well controller 316of the well planner 310 for performing one or more stages of thedrilling operation at the wellsite. The well controller 316 may providethe parameter values as control inputs to a downhole geosteering tool(not shown), which may be used to steer the drill bit and wellbore alonga planned or adjusted path through the formation. For example, the wellcontroller 316 may be communicatively coupled to the downholegeosteering tool via a wireless or wired (e.g., wireline) communicationinterface (not shown) of the system 300. Such a communication interfacemay be used by the well controller 316 to transmit the controllableparameter values as control signals to the downhole geosteering tool.The control signals may allow the well controller 316 to control, forexample, the direction and orientation of the geosteering tool andthereby, adjust the planned path of the well during the drillingoperation.

As the operation is performed along the planned well path, additionalwellsite data may be collected by a downhole sensors (e.g., withindownhole tool 106 of FIGS. 1 and 2, as described above), measurementdevices at the surface of the wellbore or a combination of both. Suchdata may include, for example and without limitation, current values ofcontrollable parameters, e.g., WOB, RPM and Q. However, it should beappreciated that the collected data may also include formation propertymeasurements and other data related to the downhole operation inprogress. As described above, such wellsite data may be obtained eitherdirectly or indirectly by system 300 via the network 304. In one or moreembodiments, the drilling optimizer 314 may use such additional data toautomatically update and further optimize the response value of theselected operating variable(s) (e.g., ROP and/or HMSE) for subsequentstages of the operation along the well path.

In one or more embodiments, the neural network model used by drillingoptimizer 314 to estimate the response value of the operating variableand values of the controllable parameters, as described above, may be atleast one of a sliding window neural network (SWNN) or a recurrent deepneural network (DNN).

FIG. 6 is a schematic of a sliding window neural network (SWNN) 600 forpredicting values of one or more operating variables of a drillingoperation along a well path. SWNN 600 may be used to predict a responsevalue for at least one operating variable, e.g., ROP and/or HMSE. SWNN600 may be trained using multivariate time-series data acquired during adrilling operation along the well path. Such drilling data may includereal-time data sampled over a sliding window of SWNN 600, as shown inFIG. 6. The sliding window of SWNN 600 may be a sampling interval of anysize or length along the well path. For example, the sliding window maycorrespond to a predetermined depth interval (e.g., 30 feet) that SWNN600 may use to incrementally sample real-time data by sliding the windowalong the depth of the wellbore, e.g., by moving the position of thewindow between different depth increments along the well path. The sizeof the sliding window or sampling interval may correspond to a stage ofthe drilling operation or a portion of an entire stage. In one or moreembodiments, the real-time drilling data acquired over a first portionof the sliding window (e.g., the first 24 feet) along the well path maybe used to train SWNN 600 and the data acquired over the remainingportion (e.g., 6 feet) may be used for testing or validating the trainedmodel to determine whether any retraining is necessary.

FIG. 7 is a schematic of a recurrent deep neural network (DNN) 700 withone or more Gated Recurrent Unit (GRU) cells for predicting values ofone or more operating variables of a drilling operation along a wellpath. However, it should be appreciated that the disclosed embodimentsare not intended to be limited to GRU cells and that the disclosedtechniques may be applied using recurrent DNN with other types of cells,e.g., Long Short Term Memory (LSTM) cells. Like SWNN 600 of FIG. 6, DNN700 may be trained using multivariate time-series drilling data acquiredalong the well path. A portion of the acquired data may be used fortraining DNN 700 while the remaining portion may be used for testing andvalidation of the trained model. As shown in FIG. 7, DNN 700 in thisexample may include multiple GRU cells in a stacked configuration, whereeach GRU cell in the stack may represent a layer of DNN 700 in which DNN700 may be trained in an iterative manner over a series of time steps.

FIG. 8 is a schematic of an illustrative GRU cell 800 of DNN 700 asshown in FIG. 7. The rectangular boxes denote layers in GRU cell 800,which have weights and biases associated with it. Circle and ellipticalshapes denote mathematical operations. In the schematic representationof GRU cell 800 as depicted in FIG. 8, h_(t-1) may be the cell state oroutput ROP from a previous time step t−1, also expressed as ROP_(t-1).The term x_(t) may represent the multivariate input for the currenttime-step, which includes WOB (r_(wob),t), RPM (r_(rpm),t) and Q(r_(q),t) from the current and previous time steps within a predefinedlook-up window of GRU cell 800.

GRU cell 800 in this example may have four layers, each of which mayhave weights and biases associated therewith. These weights and biasesmay be trained during the training process to provide optimalpredictions of the treatment pressure in the time series. The variablesf, i, and o may correspond to values for “forget”, “input”, and “output”gates. These gates may involve calculations based on a sigmoid function(σ), where resulting values fall within the range [0, 1]. The resultingvalues may define how much of the information should be passed from theprevious time step to next time step.

In one or more embodiments, a set of mathematical operations, asexpressed by Equations (2)-(6) below, may be performed to calculate astate of GRU cell 800 or output ROP at each time step t, i.e., h_(t)(ROP_(t)):

x _(t) =└r _(wob,t) ,r _(rpm,t) ,r _(q,t)┘  (2)

z _(t)=σ(W _(Z)·[h _(t-1) ,x _(t)])  (3)

r _(t)=σ(W _(r)·[h _(t-1) ,x _(t)])  (4)

{tilde over (h)} _(t)=σ(W·[r _(t) *h _(t-1) ,x _(t)])  (5)

h _(t)=(1−z _(t))*h _(t-1) +z _(t) *{tilde over (h)} _(t)  (6)

where ROP_(t) denotes the predicted ROP at time step t; x is the inputfor each time step, is which may include WOB (r_(wob),t), RPM(r_(rpm),t) and Q (r_(q),t) values that are shared by all stackedlayers; z_(t) is the update gate vector; W_(z) represents the weights ofthe update gate; r_(t) is the reset gate vector; W_(r) represents theweights of the reset gate; {tilde over (h)}_(t) is the output ofEquation (5) and serves as an intermediate value used in Equation (6) tocalculate the final output h_(t); and W represents weights for the finaloutput.

Returning to DNN 700 of FIG. 7, Equations (2)-(6) above may be used tocalculate a state of each GRU cell or output ROP (e.g., a predictedresponse value for the ROP) at each time step. In one or moreembodiments, the cell state and output ROP from an individual layer ofDNN 700 may be passed from one time step to the next in the same layerand thereby provide the basis for input formulation at the next timestep. A final predicted ROP may be obtained by combining the predictedROP values from all stacked layers at a given time step. The stacked GRUconfiguration and other variants of DNN 700 may help in capturing highlynon-linear variations in the time series data acquired during thedrilling operation. This makes such recurrent DNNs an ideal choice inthe prediction of ROP during drilling, especially given the highlynonlinear nature of the ROP time series.

In some implementations, DNN 700 may incorporate a root-mean-squareerror loss and back propagation through time (BPTT) architecture. Anexample of such a recurrent DNN architecture is shown in FIG. 9. In FIG.9, input data for the recurrent DNN is passed to a Convolution NeuralNetwork (CNN) to filter noise. A previous output of the DNN, e.g., aresponse value of the operating variable that was estimated during aprevious stage of the drilling operation or that was acquired from anexternal source, such as an offset well, is passed to a noise filter,e.g., a Kalman filter or autoencoder, for denoising the data to removeor at least reduce noise before the data is trained inside the DNN andstochastic optimization, e.g., Bayesian optimization (BO) as describedabove, is applied.

FIG. 10 is a flowchart of an illustrative process 1000 of optimizingdrilling parameters using a neural network model for real-time wellplanning and control over different stages of a drilling operation alonga well path. For discussion purposes, process 1000 will be describedusing system 300 of FIG. 3, as described above. However, process 1000 isnot intended to be limited thereto. Also, for discussion purposes,process will be described using drilling systems 100 and 200 of FIGS. 1and 2, respectively, but is not intended to be limited thereto. Theoperations in blocks 1002, 1004, 1006, 1008, 1010, 1012, 1014, 1016, and1018 of process 1000 may be performed by, for example, one or morecomponents of well planner 310 of system 300, as described above.

Process 1000 begins at block 1002, which includes acquiring real-timedata, including values for a plurality of input variables, for a currentstage of a drilling operation along a planned path of a wellbore withina subsurface formation.

In block 1004, a neural network model is trained to produce an objectivefunction defining a response value of at least one operating variable tobe optimized during the drilling operation along the planned path, basedon the real-time data acquired in block 1002. In one or moreembodiments, the operating variable may be selected by a user, e.g.,user 302 of system 300 of FIG. 3, as described above. Thus, while notshown in FIG. 10, block 1002 or 1004 may also include receiving inputfrom the user (e.g., via GUI 330 of FIG. 3) with the user's selection ofthe operating variable. The selected operating variable may be, forexample and without limitation, ROP and/or HMSE.

In block 1006, a response value for the at least one operating variableis estimated, based on the objective function produced by the trainedneural network model.

Process 1000 then proceeds to block 1008, which includes applyingBayesian optimization to the response value defined by the objectivefunction such that the trained neural network model produces anoptimized response value for the at least one operating variable.

In block 1010, the optimized response value of the operating variable isused to estimate values of a plurality of controllable parameters for asubsequent stage of the drilling operation.

In block 1012, the subsequent stage of the drilling operation isperformed based on the estimated values of the plurality of controllableparameters.

In block 1014, an actual value of the operating variable may bedetermined during the subsequent stage (based on additional dataacquired during this stage) and process 1000 may proceed to block 1016.

Block 1016 may include determining whether a difference between theactual value of the at least one operating variable and the responsevalue, as estimated and optimized in blocks 1006 and 1008, respectively,exceeds an error tolerance threshold. When the difference is determinedto exceed the error threshold, process 1000 proceeds to block 1018,which includes retraining the neural network model by applyingstochastic optimization (e.g., Bayesian optimization) to one or morehyperparameters of the model, as described above. Process 1000 thenreturns to block 1006 and the above-described operations in blocks 1006,1008, 1010, 1012, 1014 and 1016 may be repeated for the next stage ofthe drilling operation using the retrained neural network model.Otherwise, process 1000 may return to block 1006 directly from block1016 so that the operations in the above-described blocks may berepeated for the next stage of the drilling operation using thepreviously trained model.

FIGS. 11A, 11B, 11C and 11D are plot graphs showing values of rate ofpenetration (ROP) as predicted using a SWNN model relative to the actualROP values along a well path as a function of depth. The size of thesliding window of the SWNN used for the predictions in the example shownin FIGS. 11A and 11B as well as for the example shown in FIGS. 11C and11D is assumed to be 30 feet, where the values for the first 24 feet ofeach window (e.g., as shown in each of FIGS. 11A and 11C) are used fortraining the SWNN and the values for the next or last 6 feet of thewindow (as shown in each of FIGS. 11B and 11D) are used for testing themodel's predictions and retraining the model if necessary. It may alsobe assumed for purposes of this example that no retraining of the SWNNwas required, e.g., because the predictions produced by the SWNN met theretraining criterion or error tolerance threshold. For example, theretraining criterion or error threshold may be a specified root meansquare error value (e.g., 0.2), and the difference between an actualvalue of the operating variable and the response value predicted usingthe SWNN may be less than this root mean square error value.

FIGS. 12A and 12B are plot graphs showing a comparison between predictedROP values and normalized actual ROP values along a well path over depth(e.g., in feet), where the predicted values are based on a recurrent DNNwith and without a noise filter, respectively. As shown by the plotgraph in each of FIGS. 12A and 12B, the predicted values tend to be muchcloser to the actual values when a noise filter, e.g., a Kalman filteror denoising autoencoder, is used. The use of such a filter to producemore accurate predictions of ROP in this example may also indicate thata number of input variables may be unknown or missing. Accordingly, theaccuracy and/or efficiency of the DNN model for predicting the ROPresponse in this example may be further improved by increasing thenumber of input variables that are used to appropriately train orretrain the model. For example, the model may be retrained usingadditional input variables, e.g., reservoir properties or otherinformation relating to the characteristics of the subsurface formation,which may affect ROP during a drilling operation.

While the various embodiments are described herein in the context ofsurface computer systems, it should be noted that the disclosed modelingand parameter optimization techniques are not intended to be limitedthereto. In one or more embodiments, some or all of the calculationsrelated to the operating variable and/or the controllable parameters maybe performed by a processor within a downhole tool disposed within thewellbore proximate to the drill bit. For example, the telemetry module124 of FIGS. 1 and 2, as described above, may include a computer systemfor performing such calculations downhole. The telemetry module 124 mayinclude an encoding system, such as a mud pulser, for communicating(e.g., via telemetry) some or all the calculation results to the surfacecomputer systems. In cases where control of the operational parameter isautomated, the telemetry module 124 or other downhole computer system(e.g., a downhole geosteering tool) coupled thereto may be usedautomatically control or change one or more controllable parameters(e.g., the RPM or speed of the mud motor 112, WOB, and/or fluidinjection/flow rate).

FIG. 13 is a block diagram of an illustrative computer system 1300 inwhich embodiments of the present disclosure may be implemented. Forexample, process 1000 of FIG. 10 and the functions performed by system300 (including well planner 310) of FIG. 3, as described above, may beimplemented using system 1300. System 1300 can be a computer, phone,PDA, or any other type of electronic device. Such an electronic deviceincludes various types of computer readable media and interfaces forvarious other types of computer readable media. As shown in FIG. 13,system 1300 includes a permanent storage device 1302, a system memory1304, an output device interface 1306, a system communications bus 1308,a read-only memory (ROM) 1310, processing unit(s) 1312, an input deviceinterface 1314, and a network interface 1316.

Bus 1308 collectively represents all system, peripheral, and chipsetbuses that communicatively connect the numerous internal devices ofsystem 1300. For instance, bus 1308 communicatively connects processingunit(s) 1312 with ROM 1310, system memory 1304, and permanent storagedevice 1302.

From these various memory units, processing unit(s) 1312 retrievesinstructions to execute and data to process in order to execute theprocesses of the subject disclosure. The processing unit(s) can be asingle processor or a multi-core processor in different implementations.

ROM 1310 stores static data and instructions that are needed byprocessing unit(s) 1312 and other modules of system 1300. Permanentstorage device 1302, on the other hand, is a read-and-write memorydevice. This device is a non-volatile memory unit that storesinstructions and data even when system 1300 is powered off. Someimplementations of the subject disclosure use a mass-storage device(such as a magnetic or optical disk and its corresponding disk drive) aspermanent storage device 1302.

Other implementations use a removable storage device (such as a floppydisk, flash drive, and its corresponding disk drive) as permanentstorage device 1302. Like permanent storage device 1302, system memory1304 is a read-and-write memory device. However, unlike storage device1302, system memory 1304 is a volatile read-and-write memory, such arandom access memory. System memory 1304 stores some of the instructionsand data that the processor needs at runtime. In some implementations,the processes of the subject disclosure are stored in system memory1304, permanent storage device 1302, and/or ROM 1310. For example, thevarious memory units include instructions for computer aided pipe stringdesign based on existing string designs in accordance with someimplementations. From these various memory units, processing unit(s)1312 retrieves instructions to execute and data to process in order toexecute the processes of some implementations.

Bus 1308 also connects to input and output device interfaces 1314 and1306. Input device interface 1314 enables the user to communicateinformation and select commands to the system 1300. Input devices usedwith input device interface 1314 include, for example, alphanumeric,QWERTY, or T9 keyboards, microphones, and pointing devices (also called“cursor control devices”). Output device interfaces 1306 enables, forexample, the display of images generated by the system 1300. Outputdevices used with output device interface 1306 include, for example,printers and display devices, such as cathode ray tubes (CRT) or liquidcrystal displays (LCD). Some implementations include devices such as atouchscreen that functions as both input and output devices. It shouldbe appreciated that embodiments of the present disclosure may beimplemented using a computer including any of various types of input andoutput devices for enabling interaction with a user. Such interactionmay include feedback to or from the user in different forms of sensoryfeedback including, but not limited to, visual feedback, auditoryfeedback, or tactile feedback. Further, input from the user can bereceived in any form including, but not limited to, acoustic, speech, ortactile input. Additionally, interaction with the user may includetransmitting and receiving different types of information, e.g., in theform of documents, to and from the user via the above-describedinterfaces.

Also, as shown in FIG. 13, bus 1308 also couples system 1300 to a publicor private network (not shown) or combination of networks through anetwork interface 1316. Such a network may include, for example, a localarea network (“LAN”), such as an Intranet, or a wide area network(“WAN”), such as the Internet. Any or all components of system 1300 canbe used in conjunction with the subject disclosure.

These functions described above can be implemented in digital electroniccircuitry, in computer software, firmware or hardware. The techniquescan be implemented using one or more computer program products.Programmable processors and computers can be included in or packaged asmobile devices. The processes and logic flows can be performed by one ormore programmable processors and by one or more programmable logiccircuitry. General and special purpose computing devices and storagedevices can be interconnected through communication networks.

Some implementations include electronic components, such asmicroprocessors, storage and memory that store computer programinstructions in a machine-readable or computer-readable medium(alternatively referred to as computer-readable storage media,machine-readable media, or machine-readable storage media). Someexamples of such computer-readable media include RAM, ROM, read-onlycompact discs (CD-ROM), recordable compact discs (CD-R), rewritablecompact discs (CD-RW), read-only digital versatile discs (e.g., DVD-ROM,dual-layer DVD-ROM), a variety of recordable/rewritable DVDs (e.g.,DVD-RAM, DVD-RW, DVD+RW, etc.), flash memory (e.g., SD cards, mini-SDcards, micro-SD cards, etc.), magnetic and/or solid state hard drives,read-only and recordable Blu-Ray® discs, ultra density optical discs,any other optical or magnetic media, and floppy disks. Thecomputer-readable media can store a computer program that is executableby at least one processing unit and includes sets of instructions forperforming various operations. Examples of computer programs or computercode include machine code, such as is produced by a compiler, and filesincluding higher-level code that are executed by a computer, anelectronic component, or a microprocessor using an interpreter.

While the above discussion primarily refers to microprocessor ormulti-core processors that execute software, some implementations areperformed by one or more integrated circuits, such as applicationspecific integrated circuits (ASICs) or field programmable gate arrays(FPGAs). In some implementations, such integrated circuits executeinstructions that are stored on the circuit itself. Accordingly, process1000 of FIG. 10 and the functions or operations performed by system 300of FIG. 3, as described above, may be implemented using system 1300 orany computer system having processing circuitry or a computer programproduct including instructions stored therein, which, when executed byat least one processor, causes the processor to perform functionsrelating to these methods.

As used in this specification and any claims of this application, theterms “computer”, “server”, “processor”, and “memory” all refer toelectronic or other technological devices. These terms exclude people orgroups of people. As used herein, the terms “computer readable medium”and “computer readable media” refer generally to tangible, physical, andnon-transitory electronic storage mediums that store information in aform that is readable by a computer.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front end component, e.g., aclient computer having a graphical user interface or a Web browserthrough which a user can interact with an implementation of the subjectmatter described in this specification, or any combination of one ormore such back end, middleware, or front end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (“LAN”) and a widearea network (“WAN”), an inter-network (e.g., the Internet), andpeer-to-peer networks (e.g., ad hoc peer-to-peer networks).

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data (e.g., a web page) to a clientdevice (e.g., for purposes of displaying data to and receiving userinput from a user interacting with the client device). Data generated atthe client device (e.g., a result of the user interaction) can bereceived from the client device at the server.

It is understood that any specific order or hierarchy of steps in theprocesses disclosed is an illustration of exemplary approaches. Basedupon design preferences, it is understood that the specific order orhierarchy of steps in the processes may be rearranged, or that allillustrated steps be performed. Some of the steps may be performedsimultaneously. For example, in certain circumstances, multitasking andparallel processing may be advantageous. Moreover, the separation ofvarious system components in the embodiments described above should notbe understood as requiring such separation in all embodiments, and itshould be understood that the described program components and systemscan generally be integrated together in a single software product orpackaged into multiple software products.

Furthermore, the exemplary methodologies described herein may beimplemented by a system including processing circuitry or a computerprogram product including instructions which, when executed by at leastone processor, causes the processor to perform any of the methodologydescribed herein.

As described above, embodiments of the present disclosure areparticularly useful for real-time optimization of parameters duringdrilling operations. In one embodiment of the present disclosure, acomputer-implemented method of optimizing parameters for drillingoperations includes: acquiring real-time data including values for aplurality of input variables associated with a current stage of adrilling operation along a planned path of a wellbore within asubsurface formation; training a neural network model to produce anobjective function defining a response value for at least one operatingvariable to be optimized during the drilling operation along the plannedpath, based on the acquired real-time data; estimating the responsevalue for the at least one operating variable, based on the objectivefunction produced by the trained neural network model; applyingstochastic optimization to the estimated response value so as to producean optimized response value for the at least one operating variable;estimating values of a plurality of controllable parameters for asubsequent stage of the drilling operation, based on the optimizedresponse value of the at least one operating variable; and performingthe subsequent stage of the drilling operation based on the estimatedvalues of the plurality of controllable parameters. In anotherembodiment of the present disclosure, a computer-readable storage mediumhaving instructions stored therein is disclosed, where the instructions,when executed by a computer, cause the computer to perform a pluralityof functions, including functions to: acquire real-time data includingvalues for a plurality of input variables associated with a currentstage of a drilling operation along a planned path of a wellbore withina subsurface formation; train a neural network model to produce anobjective function defining a response value for at least one operatingvariable to be optimized during the drilling operation along the plannedpath, based on the acquired real-time data; estimate the response valuefor the at least one operating variable, based on the objective functionproduced by the trained neural network model; apply stochasticoptimization to the estimated response value so as to produce anoptimized response value for the at least one operating variable;estimate values of a plurality of controllable parameters for asubsequent stage of the drilling operation, based on the optimizedresponse value of the at least one operating variable; and perform thesubsequent stage of the drilling operation based on the estimated valuesof the plurality of controllable parameters.

In one or more embodiments of the foregoing method and/orcomputer-readable storage medium: the at least one operating variable isat least one of a rate of penetration (ROP) or a hydraulic mechanicalspecific energy (HMSE), the stochastic optimization is Bayesianoptimization, and the optimized response value is at least one of amaximum value for the ROP or a minimum value for the HMSE; the valuesfor the plurality of input variables are initial values for theplurality of controllable parameters associated with the current stageof the drilling operation; the plurality of controllable parametersinclude weight-on-bit (WOB), a rotational speed of a drill bit, and apumping rate of drilling fluid; the neural network model is a slidingwindow neural network (SWNN); the neural network model is a recurrentdeep neural network (DNN); and the recurrent DNN includes at least oneof a Gated Recurrent Unit (GRU) cell or a Long Short Term Memory (LSTM)cell. Furthermore, one or more embodiments of the foregoing methodand/or computer-readable storage medium may include any one or anycombination of the following additional elements, functions, oroperations: determining an actual value of the at least one operatingvariable during the subsequent stage of the drilling operation,determining whether a difference between the actual value and theestimated value of the at least one operating variable exceeds an errortolerance, and retraining the neural network model when the differenceis determined to exceed the error tolerance; retraining by applyingBayesian optimization to one or more hyperparameters of the neuralnetwork model; training by filtering noise from the real-time data andtraining the recurrent DNN based on the filtered real-time data; andfiltering by applying the real-time data as input to a convolutionneural network and passing output data including a previously estimatedresponse value of the at least one operating variable through a Kalmanfilter, and training the recurrent DNN by training the recurrent DNNbased on an output of the convolutional neural network and an output ofthe Kalman filter.

In yet another embodiment of the present disclosure, a system includesat least one processor and a memory coupled to the processor havinginstructions stored therein, which when executed by the processor, causethe processor to perform functions including functions to: acquirereal-time data including values for a plurality of input variablesassociated with a current stage of a drilling operation along a plannedpath of a wellbore within a subsurface formation; train a neural networkmodel to produce an objective function defining a response value for atleast one operating variable to be optimized during the drillingoperation along the planned path, based on the acquired real-time data;estimate the response value for the at least one operating variable,based on the objective function produced by the trained neural networkmodel; apply stochastic optimization to the estimated response value soas to produce an optimized response value for the at least one operatingvariable; estimate values of a plurality of controllable parameters fora subsequent stage of the drilling operation, based on the optimizedresponse value of the at least one operating variable; and perform thesubsequent stage of the drilling operation based on the estimated valuesof the plurality of controllable parameters.

In one or more embodiments of the foregoing system: the at least oneoperating variable is at least one of a rate of penetration (ROP) or ahydraulic mechanical specific energy (HMSE), the stochastic optimizationis Bayesian optimization, and the optimized response value is at leastone of a maximum value for the ROP or a minimum value for the HMSE; thevalues for the plurality of input variables are initial values for theplurality of controllable parameters associated with the current stageof the drilling operation; the plurality of controllable parametersinclude weight-on-bit (WOB), a rotational speed of a drill bit, and apumping rate of drilling fluid; the neural network model is a slidingwindow neural network (SWNN); the neural network model is a recurrentdeep neural network (DNN); and the recurrent DNN includes at least oneof a Gated Recurrent Unit (GRU) cell or a Long Short Term Memory (LSTM)cell. Furthermore, in one or more embodiments of the foregoing system,the functions performed by the processor may further include functionsto: determine an actual value of the at least one operating variableduring the subsequent stage of the drilling operation; determine whethera difference between the actual value and the estimated value of the atleast one operating variable exceeds an error tolerance; retrain theneural network model when the difference is determined to exceed theerror tolerance; apply Bayesian optimization to one or morehyperparameters of the neural network model; filter noise from thereal-time data; train the recurrent DNN based on the filtered real-timedata; apply the real-time data as input to a convolution neural network;pass output data including a previously estimated response value of theat least one operating variable through a Kalman filter; and train therecurrent DNN based on an output of the convolutional neural network andan output of the Kalman filter.

While specific details about the above embodiments have been described,the above hardware and software descriptions are intended merely asexample embodiments and are not intended to limit the structure orimplementation of the disclosed embodiments. For instance, although manyother internal components of the system 1300 are not shown, those ofordinary skill in the art will appreciate that such components and theirinterconnection are well known.

In addition, certain aspects of the disclosed embodiments, as outlinedabove, may be embodied in software that is executed using one or moreprocessing units/components. Program aspects of the technology may bethought of as “products” or “articles of manufacture” typically in theform of executable code and/or associated data that is carried on orembodied in a type of machine readable medium. Tangible non-transitory“storage” type media include any or all of the memory or other storagefor the computers, processors or the like, or associated modulesthereof, such as various semiconductor memories, tape drives, diskdrives, optical or magnetic disks, and the like, which may providestorage at any time for the software programming.

Additionally, the flowchart and block diagrams in the figures illustratethe architecture, functionality, and operation of possibleimplementations of systems, methods and computer program productsaccording to various embodiments of the present disclosure. It shouldalso be noted that, in some alternative implementations, the functionsnoted in the block may occur out of the order noted in the figures. Forexample, two blocks shown in succession may, in fact, be executedsubstantially concurrently, or the blocks may sometimes be executed inthe reverse order, depending upon the functionality involved. It willalso be noted that each block of the block diagrams and/or flowchartillustration, and combinations of blocks in the block diagrams and/orflowchart illustration, can be implemented by special purposehardware-based systems that perform the specified functions or acts, orcombinations of special purpose hardware and computer instructions.

The above specific example embodiments are not intended to limit thescope of the claims. The example embodiments may be modified byincluding, excluding, or combining one or more features or functionsdescribed in the disclosure.

As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprise”and/or “comprising,” when used in this specification and/or the claims,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof. The correspondingstructures, materials, acts, and equivalents of all means or step plusfunction elements in the claims below are intended to include anystructure, material, or act for performing the function in combinationwith other claimed elements as specifically claimed. The description ofthe present disclosure has been presented for purposes of illustrationand description, but is not intended to be exhaustive or limited to theembodiments in the form disclosed. Many modifications and variationswill be apparent to those of ordinary skill in the art without departingfrom the scope and spirit of the disclosure. The illustrativeembodiments described herein are provided to explain the principles ofthe disclosure and the practical application thereof, and to enableothers of ordinary skill in the art to understand that the disclosedembodiments may be modified as desired for a particular implementationor use. The scope of the claims is intended to broadly cover thedisclosed embodiments and any such modification.

What is claimed is:
 1. A computer-implemented method of optimizingparameters for drilling operations, the method comprising: acquiringreal-time data including values for a plurality of input variablesassociated with a current stage of a drilling operation along a plannedpath of a wellbore within a subsurface formation; training a neuralnetwork model to produce an objective function defining a response valuefor at least one operating variable to be optimized during the drillingoperation along the planned path, based on the acquired real-time data;estimating the response value for the at least one operating variable,based on the objective function produced by the trained neural networkmodel; applying stochastic optimization to the estimated response valueso as to produce an optimized response value for the at least oneoperating variable; estimating values of a plurality of controllableparameters for a subsequent stage of the drilling operation, based onthe optimized response value of the at least one operating variable; andperforming the subsequent stage of the drilling operation based on theestimated values of the plurality of controllable parameters.
 2. Themethod of claim 1, wherein the at least one operating variable is atleast one of a rate of penetration (ROP) or a hydraulic mechanicalspecific energy (HMSE), the stochastic optimization is Bayesianoptimization, and the optimized response value is at least one of amaximum value for the ROP or a minimum value for the HMSE.
 3. The methodof claim 1, wherein the values for the plurality of input variables areinitial values for the plurality of controllable parameters associatedwith the current stage of the drilling operation.
 4. The method of claim1, wherein the plurality of controllable parameters includeweight-on-bit (WOB), a rotational speed of a drill bit, and a pumpingrate of drilling fluid.
 5. The method of claim 1, further comprising:determining an actual value of the at least one operating variableduring the subsequent stage of the drilling operation; determiningwhether a difference between the actual value and the estimated value ofthe at least one operating variable exceeds an error tolerance; and whenthe difference is determined to exceed the error tolerance, retrainingthe neural network model.
 6. The method of claim 5, wherein retrainingcomprises: applying Bayesian optimization to one or more hyperparametersof the neural network model.
 7. The method of claim 6, wherein theneural network model is at least one of a sliding window neural network(SWNN) or a recurrent deep neural network (DNN).
 8. The method of claim7, wherein the recurrent DNN includes at least one of a Gated RecurrentUnit (GRU) cell or a Long Short Term Memory (LSTM) cell.
 9. The methodof claim 7, wherein training comprises: filtering noise from thereal-time data; and training the recurrent DNN based on the filteredreal-time data.
 10. The method of claim 9, wherein filtering comprises:applying the real-time data as input to a convolution neural network;and passing output data including a previously estimated response valueof the at least one operating variable through a Kalman filter, andwherein training the recurrent DNN comprises: training the recurrent DNNbased on an output of the convolutional neural network and an output ofthe Kalman filter.
 11. A system comprising: at least one processor; anda memory coupled to the processor having instructions stored therein,which when executed by the processor, cause the processor to perform aplurality of functions, including functions to: acquire real-time dataincluding values for a plurality of input variables associated with acurrent stage of a drilling operation along a planned path of a wellborewithin a subsurface formation; is train a neural network model toproduce an objective function defining a response value for at least oneoperating variable to be optimized during the drilling operation alongthe planned path, based on the acquired real-time data; estimate theresponse value for the at least one operating variable, based on theobjective function produced by the trained neural network model; applystochastic optimization to the estimated response value so as to producean optimized response value for the at least one operating variable;estimate values of a plurality of controllable parameters for asubsequent stage of the drilling operation, based on the optimizedresponse value of the at least one operating variable; and perform thesubsequent stage of the drilling operation based on the estimated valuesof the plurality of controllable parameters.
 12. The system of claim 11,wherein the at least one operating variable is at least one of a rate ofpenetration (ROP) or a hydraulic mechanical specific energy (HMSE), thestochastic optimization is Bayesian optimization, and the optimizedresponse value is at least one of a maximum value for the ROP or aminimum value for the HMSE.
 13. The system of claim 11, wherein thevalues for the plurality of input variables are initial values for theplurality of controllable parameters associated with the current stageof the drilling operation, and the plurality of controllable parametersinclude weight-on-bit (WOB), a rotational speed of a drill bit, and apumping rate of drilling fluid.
 14. The system of claim 11, wherein thefunctions performed by the processor further include functions to:determine an actual value of the at least one operating variable duringthe subsequent stage of the drilling operation; determine whether adifference between the actual value and the estimated value of the atleast one operating variable exceeds an error tolerance; and is retrainthe neural network model when the difference is determined to exceed theerror tolerance.
 15. The system of claim 14, wherein the neural networkmodel is retrained by applying Bayesian optimization to one or morehyperparameters of the neural network model, and the one or morehyperparameters are selected from the group consisting of: a number oflayers of the neural network model; a number of nodes in each layer ofthe neural network model; and a learning rate of decay of the neuralnetwork model.
 16. The system of claim 15, wherein the neural networkmodel is at least one of a sliding window neural network (SWNN) or arecurrent deep neural network (DNN).
 17. The system of claim 16, whereinthe recurrent DNN includes at least one of a Gated Recurrent Unit (GRU)cell or a Long Short Term Memory (LSTM) cell.
 18. The system of claim16, wherein the functions performed by the processor further includefunctions to filter noise from the real-time data, and the recurrent DNNis trained based on the filtered real-time data.
 19. The system of claim18, wherein the functions performed by the processor further includefunctions to: apply the real-time data as input to a convolution neuralnetwork; pass output data including a previously estimated responsevalue of the at least one operating variable through a Kalman filter;and train the recurrent DNN based on an output of the convolutionalneural network and an output of the Kalman filter.
 20. Acomputer-readable storage medium having instructions stored therein,which when executed by a computer cause the computer to perform aplurality of functions, including functions to: acquire real-time dataincluding values for a plurality of input variables associated with acurrent stage of a drilling operation along a planned path of a wellborewithin a subsurface formation; train a neural network model to producean objective function defining a response value for at least oneoperating variable to be optimized during the drilling operation alongthe planned path, based on the acquired real-time data; estimate theresponse value for the at least one operating variable, based on theobjective function produced by the trained neural network model; applystochastic optimization to the estimated response value so as to producean optimized response value for the at least one operating variable;estimate values of a plurality of controllable parameters for asubsequent stage of the drilling operation, based on the optimizedresponse value of the at least one operating variable; and perform thesubsequent stage of the drilling operation based on the estimated valuesof the plurality of controllable parameters.